package org.visionlibrary.image.model;

import javax.media.jai.TiledImage;

import org.visionlibrary.image.event.IProcEventGenerator;
import org.visionlibrary.image.normalization.CuttingNormalization;


abstract public class AbstractFilter extends IProcEventGenerator {
	protected INormalization normalization = new CuttingNormalization();

	abstract public TiledImage applyFilter(TiledImage src, TiledImage dest);

	public INormalization getNormalization() {
		return normalization;
	}

	public void setNormalization(INormalization normalization)
			throws NullPointerException {
		if (normalization == null)
			throw new NullPointerException("Normalization is null");

		this.normalization = normalization;
	}
}
